home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 101-125 / scopedisk106 / snag / killer.c < prev    next >
C/C++ Source or Header  |  1995-03-19  |  1KB  |  43 lines

  1. struct IntuitionBase *IntuitionBase;
  2. struct IntuiMessage RetryMsg = {
  3.    {
  4.    0,0,NT_MESSAGE,0,0,
  5.    0,sizeof(struct IntuiMessage),
  6.    };
  7.  
  8. main()
  9. {
  10. struct Screen *AScreen;
  11. struct Window *Window;
  12. struct MsgPort *mport;
  13.  
  14.    IntuitionBase = (struct IntuitionBase *) OpenLibrary("intuition.library",0L);
  15.    RetryMsg.Class = RAWKEY;
  16.    RetryMsg.Code = 0x34;
  17.    RetryMsg.Qualifier = IEQUALIFIER_LCOMMAND;
  18.    mport = CreatePort(0L,0L);
  19.    FOREVER
  20.       {
  21.       Forbid();
  22.       AScreen = IntuitionBase->ActiveScreen;
  23.       if (AScreen->Flags & WBENCHSCREEN)
  24.          {
  25.          for (Window = AScreen->FirstWindow; Window; Window = Window->NextWindow)
  26.             if (!strcmp(Window->Title,"System Request"))
  27.                {
  28.                RetryMsg.ExecMessage.mn_ReplyPort = mport;
  29.                RetryMsg.IAddress = (struct Window *) RetryMsg.IDCMPWindow = Window;
  30.                PutMsg(Window->UserPort,&RetryMsg);
  31.                break;
  32.                }
  33.          if (!AScreen->Title)
  34.             {
  35.             AScreen->Flags &= ~WBENCHSCREEN;
  36.             AScreen->Flags |= CUSTOMSCREEN;
  37.             }
  38.          }
  39.       Permit();
  40.       Delay(70L);
  41.       }
  42. }
  43.